﻿using System;
using System.Collections.Generic;
using System.Web.UI;
using Microsoft.Office.Interop.Owc11;//添加Office组件引用
 
using Model;
using Model.Components;
using FrameWork.Components;


namespace FrameWork.web.Web
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                string strSeriesName = "图例";
               

                QueryParam qp = new QueryParam();
                int RecordCount=0;
                int b = 0; 
                List<T_TJEntity> lst = BusinessFacadeModel.T_TJList(qp, out RecordCount);
                string[] MonNum = new string[RecordCount];
                //存放数据
                string[] MonCount = new string[RecordCount];
                //为数组赋值
                foreach (T_TJEntity lt in lst) 
                { 
                    b=b+1;
                    MonNum[b] = lt.zjs.ToString();
                    MonCount[b] = lt.bldw.ToString();
                }

                //为x轴指定特定字符串，以便显示数据
                string strXdata = String.Empty;
                foreach (string strData in MonNum)
                {
                    strXdata += strData + "/t";
                }
                string strYdata = String.Empty;
                //为y轴指定特定的字符串，以便与x轴相对应
                foreach (string strValue in MonCount)
                {
                    strYdata += strValue + "/t";
                }

                ChartSpace laySpace = new ChartSpaceClass();
                //在ChartSpace对象中添加图表
                ChChart InsertChart = laySpace.Charts.Add(0);
                //指定绘制图表的类型。类型可以通过OWC.ChartChartTypeEnum枚举值得到
                //InsertChart.Type = ChartChartTypeEnum.chChartTypeLine;//折线图
                //InsertChart.Type = ChartChartTypeEnum.chChartTypeArea;//面积图
                //InsertChart.Type = ChartChartTypeEnum.chChartTypeBarClustered;//条形图
                InsertChart.Type = ChartChartTypeEnum.chChartTypeColumnClustered;//柱形图

                //指定图表是否需要图例标注
                InsertChart.HasLegend = false;

                InsertChart.HasTitle = true;//为图表添加标题
                InsertChart.Title.Caption = "总办结率排名";//标题名称
                //为x,y轴添加图示说明
                InsertChart.Axes[0].HasTitle = true;
                InsertChart.Axes[0].Title.Caption = "";//月份
                InsertChart.Axes[1].HasTitle = true;
                InsertChart.Axes[1].Scaling.SplitMinimum = 100;
                InsertChart.Axes[1].Title.Caption = "办结率";

                //添加一个series系列
                InsertChart.SeriesCollection.Add(0);
                //给定series系列的名字
                InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimSeriesNames, +(int)ChartSpecialDataSourcesEnum.chDataLiteral, strSeriesName);
                //给定分类
                InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimCategories, +(int)ChartSpecialDataSourcesEnum.chDataLiteral, strXdata);
                //给定值
                InsertChart.SeriesCollection[0].SetData(ChartDimensionsEnum.chDimValues, (int)ChartSpecialDataSourcesEnum.chDataLiteral, strYdata);
                //输出文件.
                string strAbsolutePath = (Server.MapPath(".")) + "//ShowData.gif";
                laySpace.ExportPicture(strAbsolutePath, "GIF", 400, 250);
                //创建GIF文件的相对路径.
                string strRelativePath = "./ShowData.gif";
                //把图片添加到placeholder中，并在页面上显示
                string strImageTag = "<IMG SRC='" + strRelativePath + "'/>";
                this.PlaceHolder1.Controls.Add(new LiteralControl(strImageTag));
            } 
        }
    }
}